package luogu;

import java.io.*;

//可以发现对于一个砝码我们要枚举放1，2，...ai个的情况
//这和多重背包逻辑相似
//通过类比发现也可以通过二进制分组实现优化
public class A2347P2 {
    static int[] w={0,1,2,3,5,10,20};
    static int N=1001;
    static int[] dp=new int[N];
    static int[] v=new int[7];
    static int[] d=new int[N];
    static BufferedReader read=new BufferedReader(new InputStreamReader(System.in));
    static BufferedWriter log=new BufferedWriter(new OutputStreamWriter(System.out));
    public static void main(String[] args) throws IOException {
        String[] t = read.readLine().split(" ");
        dp[0]=1;
        int cnt=0;
        for(int i=1;i<=6;i++){
            v[i]=Integer.parseInt(t[i-1]);
            int s=v[i];//数量
            int k=1;
            while(k<=s){
                cnt++;
                d[cnt]=k*w[i];//数量*单个砝码重
                cnt++;
                s-=k;
                k*=2;
            }
            if(s>0){
                cnt++;
                d[cnt]=s*w[i];//剩余数量*单个砝码重
            }
        }

        for(int i=0;i<=cnt;i++){//枚举每个组
            for(int k=1000;k>=0;k--){
                if(dp[k]==1){
                    dp[k+d[i]]=1;//如果重量为k的组已经存在，那么加上这个克重的组别的也存在
                }
            }
        }
        int res=0;
        for(int i=1;i<=1000;i++){
            if(dp[i]==1)res++;
        }
        System.out.println("Total="+res);
    }
}
